package prototype.actors.framework;

import prototype.roles.TemplatePrototype;

/**
 * @author chj
 * 类名：Product
 * 类型：抽象类
 * 类含义：表示带有复制功能的产品对象
 * 设计模式角色：TemplatePrototype
 */
public abstract class Product implements Cloneable, TemplatePrototype {
    /**
     * @author chj
     * 方法含义：表示“使用”操作，具体如何操作交由子类实现。
     * @param s 传入的字符串
     */
    public abstract void use(String s);

    /**
     * @author chj
     * 方法含义：表示“复制实例”操作。
     * @return 复制得到的实例
     */
    public abstract Product createClone();
}
